package com.controller;

import com.dao.ClazzDao;
import com.dto.DTO;
import com.entity.Clazz;
import com.page.PageInfo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;
import java.util.List;

@Controller //@Controller注解是用spring容器生成 对象 默认对象名 clazzController
@RequestMapping("/clazzController") //@RequestMapping 用户请求查找该资源使用的名字 网名 默认  /clazzController
public class ClazzController {
	@Resource
	ClazzDao clazzDao;
//	@RequestMapping("/getAllClazz")
//	@ResponseBody //把方法的返回值按json转换之后 输出到浏览器
//    public DTO<Clazz> getAllClazz(){
//    	System.out.println("查询全部班級");
//    	List<Clazz> clazzs =  clazzDao.getAllClazzs();
//    	return new DTO<Clazz>(200, "查询全部班級",clazzs);
//    }

	@RequestMapping("/deleteClazzById/{aId}")
	@ResponseBody
    public DTO<Clazz> deleteClazzById(@PathVariable("aId") String aId){//如何从页面传入参数到方法 用这个注解绑定变量@PathVariable
    	System.out.println(aId+"删除班級");
    	return new DTO<Clazz>(200, "删除"+aId+"班級成功");
    }


	@RequestMapping("/getClazzByPage")
	@ResponseBody
	public DTO<Clazz> getClazzByPage(PageInfo pageInfo){//如何从页面传入参数到方法 用这个注解绑定变量@PathVariable
		System.out.println("分页班級");
		List<Clazz> clazzs = clazzDao.getClazzByPage(pageInfo);
		return new DTO<Clazz>(200, "分页查询班級成功",clazzs);
	}

	@RequestMapping("/getClazzById/{cno}")
	@ResponseBody
	public DTO<Clazz> getClazzById(@PathVariable("cno") String cno){//如何从页面传入参数到方法 用这个注解绑定变量@PathVariable
		System.out.println("分页班級");
		Clazz clazz = clazzDao.getClazzById(cno);
		return new DTO<Clazz>(200, "按班级号查询班级",null,clazz);
	}



	@RequestMapping("/getClazzByIdWithStudents/{cno}")
	@ResponseBody
	public DTO<Clazz> getClazzByIdWithStudents(@PathVariable("cno") String cno){//如何从页面传入参数到方法 用这个注解绑定变量@PathVariable
		System.out.println("按班级号查询班级带上学生");
		Clazz clazz = clazzDao.getClazzByIdWithStudents(cno);
		return new DTO<Clazz>(200, "按班级号查询班级带上学生",null,clazz);
	}


}
